Aplicação da Teoria dos Grafos      e Algoritmos na Engenharia de Software:Hyperlink-Induced Topic Search (HITS) e Identifi...
Agenda• Problema da busca textual• Hyperlink-Induced Topic Search (HITS)• Por que identificar God Classes?• HITS para ident...
Quero comprarum carro.     http://www.flickr.com/photos/buzrael/4981570801/sizes/l/in/photostream/
Pergunta para amigos.“melhores fabricantes de carro?”
Quero comprarA busca na Web       uma bicicleta.por termos. “melhores fabricantes de carro dos últimos 4 anos”            ...
Maecenas sed diam eget risus variusblandit sit amet non melhoresfabricantes. Donec id elit non mi portagravida at eget met...
melhores fabricantes carro automóvelveículo melhores melhores fabricantescarro automóvel veículo melhoresmelhores fabrican...
Ocorrência de termos não implica em relevância.melhores fabricantes carro automóvelveículo melhores melhores fabricantesca...
Grandes marcas falam maissobre seus produtos,  não sobre si mesmas.
Milhões de resultados. Como trazer primeiro osmais relevante para a busca?
Precisamos identificar asAutoridades sobre a    busca realizada.
Classificação de resultados em Autoridades e Hubs.Através da análise de links.
Ferrari                           Website oficial da Ferrari.                           http://www.ferrari.com             ...
Autoridades                           Ferrari                           Website oficial da Ferrari.                        ...
Autoridades                           Ferrari                           Website oficial da Ferrari.                        ...
Autoridades                           Ferrari                           Website oficial da Ferrari.                        ...
Hyperlink- Induced Topic Search (HITS) (“hubs and authorities”)Algoritmo de análise delinks para classificarpáginas na Web...
Pré-processamento
Documentos na Web
conectados por hyperlinks
1º Passo: Busca textual
Q: “melhores fabricantes de carro dos últimos 4 anos”
Q: “melhores fabricantes de carro dos últimos 4 anos”
Resultado: subgrafo R (root)
Resultado: subgrafo R (root)Características(1) Ainda é proporcionalmente pequeno(2) Deve ser rico em páginas importantes(3...
2º Passo: Expande-se o subgrafo R     (Region Growing Method)
2º Passo: Expande-se o subgrafo R     (Region Growing Method)
Resultado: subgrafo S (seed)     Base do algoritmo
Resultado: subgrafo S (seed)     Base do algoritmo
Resultado: subgrafo S (seed)Características(1) Ainda é proporcionalmente pequeno(2) Provavelmente conterá autoridades
Definições• Cada página tem dois índices • a authority weight da página i     i • h hub weight da página i     i• Páginas c...
Atualizando pesos de Sap é...soma do hi de todos os nós i apontando para p          i1                             p      ...
Atualizando pesos de Shp é...soma do ai de todos os nós i apontados por p                             i1           p      ...
Atualizando pesos de SOu seja,Um bom Hub aumenta o a de quem aponta;Uma boa Autoridade aumenta o h de quemaponta para ela.
Atualizando pesos de S  Seja,A a matriz de adjacência de S;a vetor com pesos de autoridade de S;h vetor com pesos de hubs ...
Exemplo1      32
Exemplo1      3          A=   [ ]               0 0 1               0 0 1               0 0 02
Exemplo1         A=       [ ]                   0 0 1                   0 0 1                   0 0 0                   [ ...
Exemplo1         A=        [ ]                     0 0 1                     0 0 1                     0 0 0              ...
Exemploa = At . h =   [ ][ ] [ ]                0 0 0                0 0 0                1 1 0                        1  ...
Exemploa = At . h =   [ ][ ] [ ]                0 0 0                0 0 0                1 1 0                        1  ...
Exemploa1 = 0h1 = 2         1                       a3 = 2                   3                       h3 = 0a2 = 0h2 = 2   ...
Observações• Neste caso, novas iterações irão gerar  vetores equivalentes ao atuais, mas  multiplicados por um escalar;• O...
O Algoritmo
Itere(G,k)G:	  coleção	  de	  n	  páginas	  linkadask:	  um	  número	  naturalz	  é	  o	  vetor	  (1;1;1;...;1)	  E	  RnSe...
Análise da       Complexidade• Eq. 1 é uma multiplicação matriz-vetor• Eq. 2 é uma multiplicação matriz-vetor• Ambas são e...
Por que identificar God Classes?
God ClassesCentralização da inteligência / complexidade de um sistema(herança da programação procedural)                  ...
God ClassesViolam o princípio da distribuição uniforme deresponsabilidades.                             http://www.corej2e...
God ClassesDifíceis de implementar, manter e testar.                                 http://www.corej2eepatterns.com/Patte...
God ClassesDelegam pequenos detalhes e utilizam dados de outrasclasses mais triviais do sistema.                          ...
God ClassesImpacto negativo na reutilização de componentes e nacompreensão do sistema.                                 htt...
Estratégia para Detecção de God         Classes [Lanza, 2006]Acessam diretamente muitos dados de outras classes maissimple...
Estratégia para Detecção de God        Classes [Lanza, 2006]São grandes (LOC) e complexas.                       http://do...
Estratégia para Detecção de God        Classes [Lanza, 2006]Baixa coesão entre os métodos da classe.                      ...
Estratégia para Detecção de God      Classes [Lanza, 2006]               http://doi.ieeecomputersociety.org/cms/Computer.o...
Exemplo: Forno Elétrico
HITS x God Classes
HITS x God Classes
HITS x God Classes
HITS x God Classes
HITS x God Classes
HITS x God Classesa = vetor dos pesos das autoridades;h = vetor dos pesos dos hubs;A = matriz de adjacência do Grafo;AT = ...
HITS x God Classes
HITS x God ClassesResolução do sistema: iterativa (Gauss-Seibel) ouutlizando o Teorema de Perron ou o Método dasPotências
HITS x God ClassesOs vetores a e h podem ser obtidos através do principalautovetor normalizado de ATA e AAT. O principalau...
Autovetor e Autovalor?Seja V um espaço vetorial sobre um corpo F e A:V→ V uma transformação linear.v é um autovetor quando...
HITS x God ClassesComo identificar a God Class?Peso do HUB é alto: Behavioral God ClassPeso da Autoridade é alto: Structure...
Forno Elétrico: Cadê a God Class?
Forno Elétrico: Cadê a God Class?
Forno Elétrico: Cadê a God Class?
A classe 3 é uma God Class?a3 = 0Pois nenhum dos hubs associados a ele recebemensagens de outra classe que não da própria 3.
A classe 3 é uma God Class?h3 = 1Essa classe é a única que inicia alguma atividade nosistema.
Conclusões / Trabalhos Futuros•   O HITS é uma boa solução para “rankeamento”    de documentos resultantes de busca textua...
Conclusões / Trabalhos Futuros• Análise de outras informações do software  que podem ser identificadas com o uso do  HITS.•...
Referências[1] Riel, A. J. Object-Oriented Design Heuristics. Addison- Wesley,Boston, MA, 1996.[2] Lanza, Michele and Radu...
Referências[4] Chatzigeorgiou, Alexander, Spiros Xanthos, and GeorgeStephanides. "Evaluating object-oriented designs with ...
Referências[7] Fowler, Martin, and Kent Beck. Refactoring: improving the design ofexisting code. Addison-Wesley Profession...
Anexo 1: Convergência•   Na prática, estipula-se um número máximo de iterações para    o algoritmo convergir;•   Ou verific...
Anexo II: Multiplicação       Matriz-VetorAlgoritmo Sequencial SimplesInput: Matrix mat[m][n]Vector vec[n]Output: out[m]fo...
Anexo III:         Normalização•   Normalização de um vetor (mx1): dividir    cada elemento pela raiz quadrada da    soma ...
Anexo IV: Generalização do        Sistema de Equeções •   Iteração 0: (inicializando os pesos)a = [1,1,1...1] 0           ...
Anexo IV: Generalização do          Sistema de Equeções   Iteração k-1:a =A .h k-1            t  h =A.a                 k-...
Anexo IV: Generalização do          Sistema de Equeções   Iteração k-1:a =A .h k-1            t  h =A.a                   ...
Próximos SlideShares
Carregando em…5
×

Aplicação da Teoria dos Grafos e Algoritmos na Engenharia de Software: Hyperlink-Induced Topic Search (HITS) e Identificação de God Classes.

2.328 visualizações

Publicada em

Thiago Colares e Vagner Amaral

Publicada em: Tecnologia
0 comentários
2 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
2.328
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
33
Comentários
0
Gostaram
2
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aplicação da Teoria dos Grafos e Algoritmos na Engenharia de Software: Hyperlink-Induced Topic Search (HITS) e Identificação de God Classes.

  1. 1. Aplicação da Teoria dos Grafos e Algoritmos na Engenharia de Software:Hyperlink-Induced Topic Search (HITS) e Identificação de God Classes. Mestrado em Ciência da Computação - UFBA/UEFS Thiago Colares Vagner Amaral Salvador, 28/03/2013
  2. 2. Agenda• Problema da busca textual• Hyperlink-Induced Topic Search (HITS)• Por que identificar God Classes?• HITS para identificação de God Classes• Conclusão / Trabalhos Futuros
  3. 3. Quero comprarum carro. http://www.flickr.com/photos/buzrael/4981570801/sizes/l/in/photostream/
  4. 4. Pergunta para amigos.“melhores fabricantes de carro?”
  5. 5. Quero comprarA busca na Web uma bicicleta.por termos. “melhores fabricantes de carro dos últimos 4 anos” http://www.flickr.com/photos/buzrael/4981570801/sizes/l/in/photostream/ http://www.flickr.com/photos/daniel_gies/5427386376/sizes/l/in/photostream/
  6. 6. Maecenas sed diam eget risus variusblandit sit amet non melhoresfabricantes. Donec id elit non mi portagravida at eget metus. Cras justo odio,dapibus ac facilisis in, egestas egetquam. Etiam porta sem malesuadamagna mollis euismod. Carros mollisinterdum. Cras justo odio, dapibus acfacilisis in, egestas ege últimos 4 anos.
  7. 7. melhores fabricantes carro automóvelveículo melhores melhores fabricantescarro automóvel veículo melhoresmelhores fabricantes carro automóvelveículo melhores melhores fabricantescarro automóvel veículo melhoresmelhores fabricantes carro automóvelveículo melhores melhores fabricantescarro automóvel veículo melhores
  8. 8. Ocorrência de termos não implica em relevância.melhores fabricantes carro automóvelveículo melhores melhores fabricantescarro automóvel veículo melhoresmelhores fabricantes carro automóvelveículo melhores melhores fabricantescarro automóvel veículo melhoresmelhores fabricantes carro automóvelveículo melhores melhores fabricantescarro automóvel veículo melhores
  9. 9. Grandes marcas falam maissobre seus produtos, não sobre si mesmas.
  10. 10. Milhões de resultados. Como trazer primeiro osmais relevante para a busca?
  11. 11. Precisamos identificar asAutoridades sobre a busca realizada.
  12. 12. Classificação de resultados em Autoridades e Hubs.Através da análise de links.
  13. 13. Ferrari Website oficial da Ferrari. http://www.ferrari.com FiatCar Rankings Grande empresa italiana.http://www.Edmunds.com http://www.ferrari.com FordCar Rankingshttp://www.ConReport.com Fabricante de carros. http://www.ferrari.comManufacturer Websites Chyrslerhttp://www.CarManu.com Compania america de jeep e carros esportivos. http://www.ferrari.com
  14. 14. Autoridades Ferrari Website oficial da Ferrari. http://www.ferrari.com FiatCar Rankings Grande empresa italiana.http://www.Edmunds.com http://www.ferrari.com FordCar Rankingshttp://www.ConReport.com Fabricante de carros. http://www.ferrari.comManufacturer Websites Chyrslerhttp://www.CarManu.com Compania america de jeep e carros esportivos. http://www.ferrari.com
  15. 15. Autoridades Ferrari Website oficial da Ferrari. http://www.ferrari.com Hubs FiatCar Rankings Grande empresa italiana.http://www.Edmunds.com http://www.ferrari.com FordCar Rankingshttp://www.ConReport.com Fabricante de carros. http://www.ferrari.comManufacturer Websites Chyrslerhttp://www.CarManu.com Compania america de jeep e carros esportivos. http://www.ferrari.com
  16. 16. Autoridades Ferrari Website oficial da Ferrari. http://www.ferrari.com Hubs FiatCar Rankings Grande empresa italiana.http://www.Edmunds.com http://www.ferrari.com FordCar Rankingshttp://www.ConReport.com Fabricante de carros. http://www.ferrari.comManufacturer Websites Chyrslerhttp://www.CarManu.com Compania america de jeep e carros esportivos. http://www.ferrari.com
  17. 17. Hyperlink- Induced Topic Search (HITS) (“hubs and authorities”)Algoritmo de análise delinks para classificarpáginas na WebJon Kleinberg, 99 (IBM)Precursor do PageRank
  18. 18. Pré-processamento
  19. 19. Documentos na Web
  20. 20. conectados por hyperlinks
  21. 21. 1º Passo: Busca textual
  22. 22. Q: “melhores fabricantes de carro dos últimos 4 anos”
  23. 23. Q: “melhores fabricantes de carro dos últimos 4 anos”
  24. 24. Resultado: subgrafo R (root)
  25. 25. Resultado: subgrafo R (root)Características(1) Ainda é proporcionalmente pequeno(2) Deve ser rico em páginas importantes(3) Provavelmente não contém autoridades
  26. 26. 2º Passo: Expande-se o subgrafo R (Region Growing Method)
  27. 27. 2º Passo: Expande-se o subgrafo R (Region Growing Method)
  28. 28. Resultado: subgrafo S (seed) Base do algoritmo
  29. 29. Resultado: subgrafo S (seed) Base do algoritmo
  30. 30. Resultado: subgrafo S (seed)Características(1) Ainda é proporcionalmente pequeno(2) Provavelmente conterá autoridades
  31. 31. Definições• Cada página tem dois índices • a authority weight da página i i • h hub weight da página i i• Páginas com grande a são Autoridades i• Páginas com grande h são Hubs i
  32. 32. Atualizando pesos de Sap é...soma do hi de todos os nós i apontando para p i1 p i2
  33. 33. Atualizando pesos de Shp é...soma do ai de todos os nós i apontados por p i1 p i2
  34. 34. Atualizando pesos de SOu seja,Um bom Hub aumenta o a de quem aponta;Uma boa Autoridade aumenta o h de quemaponta para ela.
  35. 35. Atualizando pesos de S Seja,A a matriz de adjacência de S;a vetor com pesos de autoridade de S;h vetor com pesos de hubs do subgrafo S;O sistema que atualiza os pesos de S é: • a = . h (Eq. 1) A t • h = A . a (Eq. 2)
  36. 36. Exemplo1 32
  37. 37. Exemplo1 3 A= [ ] 0 0 1 0 0 1 0 0 02
  38. 38. Exemplo1 A= [ ] 0 0 1 0 0 1 0 0 0 [ ] 3 0 0 0 At = 0 0 02 1 1 0
  39. 39. Exemplo1 A= [ ] 0 0 1 0 0 1 0 0 0 [ ] 3 0 0 0 At = 0 0 02 1 1 0 h t = [1,1,1]
  40. 40. Exemploa = At . h = [ ][ ] [ ] 0 0 0 0 0 0 1 1 0 1 1 1 = 0 0 2
  41. 41. Exemploa = At . h = [ ][ ] [ ] 0 0 0 0 0 0 1 1 0 1 1 1 = 0 0 2h=A.a= [ ][ ] [ ] 0 0 1 0 0 1 0 0 0 1 1 1 = 2 2 0
  42. 42. Exemploa1 = 0h1 = 2 1 a3 = 2 3 h3 = 0a2 = 0h2 = 2 2
  43. 43. Observações• Neste caso, novas iterações irão gerar vetores equivalentes ao atuais, mas multiplicados por um escalar;• O algoritmo deve se repetir até o critério de parada ou equilíbrio;• Em grafos mais complexos, o equilíbrio pode não existir.
  44. 44. O Algoritmo
  45. 45. Itere(G,k)G:  coleção  de  n  páginas  linkadask:  um  número  naturalz  é  o  vetor  (1;1;1;...;1)  E  RnSet  x0  :=  z:Set  y0  :=  z:For  i  =  1;2;...;k   Opere  (xi−1;  yi−1),  set  x’i    //  Eq.  1   Opere  (x’i;  yi−1),  set  y’i      //  Eq.  2   Normalize  xi,  set  xi   Normalize  yi,  set  yiEndReturn  (xk;  yk).
  46. 46. Análise da Complexidade• Eq. 1 é uma multiplicação matriz-vetor• Eq. 2 é uma multiplicação matriz-vetor• Ambas são executas k vezes.• O(k)[O(n ) + O(n )] = O(k.n ) 2 2 2• Existem formas de melhorar • (vide anexos e referências)
  47. 47. Por que identificar God Classes?
  48. 48. God ClassesCentralização da inteligência / complexidade de um sistema(herança da programação procedural) http://www.corej2eepatterns.com/Patterns2ndEd/images/SLMainClass.gif
  49. 49. God ClassesViolam o princípio da distribuição uniforme deresponsabilidades. http://www.corej2eepatterns.com/Patterns2ndEd/images/SLMainClass.gif
  50. 50. God ClassesDifíceis de implementar, manter e testar. http://www.corej2eepatterns.com/Patterns2ndEd/images/SLMainClass.gif
  51. 51. God ClassesDelegam pequenos detalhes e utilizam dados de outrasclasses mais triviais do sistema. http://www.corej2eepatterns.com/Patterns2ndEd/images/SLMainClass.gif
  52. 52. God ClassesImpacto negativo na reutilização de componentes e nacompreensão do sistema. http://www.corej2eepatterns.com/Patterns2ndEd/images/SLMainClass.gif
  53. 53. Estratégia para Detecção de God Classes [Lanza, 2006]Acessam diretamente muitos dados de outras classes maissimples. http://doi.ieeecomputersociety.org/cms/Computer.org/dl/trans/ts/2009/03/figures/tts20090303471.gif
  54. 54. Estratégia para Detecção de God Classes [Lanza, 2006]São grandes (LOC) e complexas. http://doi.ieeecomputersociety.org/cms/Computer.org/dl/trans/ts/2009/03/figures/tts20090303471.gif
  55. 55. Estratégia para Detecção de God Classes [Lanza, 2006]Baixa coesão entre os métodos da classe. http://doi.ieeecomputersociety.org/cms/Computer.org/dl/trans/ts/2009/03/figures/tts20090303471.gif
  56. 56. Estratégia para Detecção de God Classes [Lanza, 2006] http://doi.ieeecomputersociety.org/cms/Computer.org/dl/trans/ts/2009/03/figures/tts20090303471.gif
  57. 57. Exemplo: Forno Elétrico
  58. 58. HITS x God Classes
  59. 59. HITS x God Classes
  60. 60. HITS x God Classes
  61. 61. HITS x God Classes
  62. 62. HITS x God Classes
  63. 63. HITS x God Classesa = vetor dos pesos das autoridades;h = vetor dos pesos dos hubs;A = matriz de adjacência do Grafo;AT = matriz transposta de A;
  64. 64. HITS x God Classes
  65. 65. HITS x God ClassesResolução do sistema: iterativa (Gauss-Seibel) ouutlizando o Teorema de Perron ou o Método dasPotências
  66. 66. HITS x God ClassesOs vetores a e h podem ser obtidos através do principalautovetor normalizado de ATA e AAT. O principalautovetor é aquele associado ao maior autovalor.
  67. 67. Autovetor e Autovalor?Seja V um espaço vetorial sobre um corpo F e A:V→ V uma transformação linear.v é um autovetor quando v não é um vetor não nulo e existe um escalar k tal que A*v=k*vNesse caso, pode-se dizer também que k é um autovalor.
  68. 68. HITS x God ClassesComo identificar a God Class?Peso do HUB é alto: Behavioral God ClassPeso da Autoridade é alto: Structure God Class Utilizar a média entre os dois pesos
  69. 69. Forno Elétrico: Cadê a God Class?
  70. 70. Forno Elétrico: Cadê a God Class?
  71. 71. Forno Elétrico: Cadê a God Class?
  72. 72. A classe 3 é uma God Class?a3 = 0Pois nenhum dos hubs associados a ele recebemensagens de outra classe que não da própria 3.
  73. 73. A classe 3 é uma God Class?h3 = 1Essa classe é a única que inicia alguma atividade nosistema.
  74. 74. Conclusões / Trabalhos Futuros• O HITS é uma boa solução para “rankeamento” de documentos resultantes de busca textual, do qual o PageRank também se utilizou como inspiração.• O HITS é indicado para “rankeamento” onde se precisa identificar autoridades e hubs.• O PageRank usa abordagem parecida, mas apenas se preocupa com autoridades e apresenta uma complexidade melhor O(n).
  75. 75. Conclusões / Trabalhos Futuros• Análise de outras informações do software que podem ser identificadas com o uso do HITS.• Benchmarking com outras técnicas da área de Engenharia de Software para extração de God Classes.• Aplicação do algoritmo PageRank para extração de God Classes.
  76. 76. Referências[1] Riel, A. J. Object-Oriented Design Heuristics. Addison- Wesley,Boston, MA, 1996.[2] Lanza, Michele and Radu Marinescu. Object Oriented Metricsin Practice: Using Software Metrics to Characterize, Evaluate, andImprove the Design of Object-Oriented Systems. Springer, 2006.[3] Chatzigeorgiou, Alexander, Nikolaos Tsantalis, and GeorgeStephanides. "Application of graph theory to OO softwareengineering." Proceedings of the 2006 international workshop onWorkshop on interdisciplinary software engineering research.ACM, 2006.
  77. 77. Referências[4] Chatzigeorgiou, Alexander, Spiros Xanthos, and GeorgeStephanides. "Evaluating object-oriented designs with link analysis."Proceedings of the 26th International Conference on SoftwareEngineering. IEEE Computer Society, 2004.[5] Fokaefs, Marios, et al. "Identification and application of ExtractClass refactorings in object-oriented systems." Journal of Systemsand Software(2012).[6] Chatzigeorgiou, Alexander. "Mathematical assessment of object-oriented design quality." Software Engineering, IEEE Transactions on29.11 (2003): 1050-1053.
  78. 78. Referências[7] Fowler, Martin, and Kent Beck. Refactoring: improving the design ofexisting code. Addison-Wesley Professional, 1999.[8] Kleinberg, Jon M. "Authoritative sources in a hyperlinkedenvironment." Journal of the ACM (JACM) 46.5 (1999): 604-632[9] Kleinberg, Jon M. "Hubs, authorities, and communities." ACMComputing Surveys (CSUR) 31.4es (1999): 5.[10] Sergey Brin and Lawrence Page. 1998. The anatomy of a large-scale hypertextual Web search engine. In Proceedings of the seventhinternational conference on World Wide Web 7 (WWW7), Philip H.Enslow, Jr. and Allen Ellis (Eds.). Elsevier Science Publishers B.V.,Amsterdam, The Netherlands, The Netherlands, 107-117.
  79. 79. Anexo 1: Convergência• Na prática, estipula-se um número máximo de iterações para o algoritmo convergir;• Ou verifica se houve alterações significativas nos x primeiras autoridades e hubs, pois é bastante custoso realizar esse procedimento.• Não é possível garantir que sempre irá convergir.• O critério de parada é escolhido de acordo com objetivo ou contexto do problema. Pode ser um número fixo ou porcentagem de modificação ao fim de cada ciclo.
  80. 80. Anexo II: Multiplicação Matriz-VetorAlgoritmo Sequencial SimplesInput: Matrix mat[m][n]Vector vec[n]Output: out[m]for ( i = 0; i < m; i++ ){ out[i] = 0; for ( j = 0; j < n; j++ ) out[i] += mat[i][j] * vec[j];}Vê-se claramente que a complexidade é da ordem de O(n2).Veja mais: http://www.cs.umsl.edu/~sanjiv/classes/cs5740/lectures/mvm.pdf
  81. 81. Anexo III: Normalização• Normalização de um vetor (mx1): dividir cada elemento pela raiz quadrada da soma dos quadrados de cada elemento;• Normalizar uma matriz: dividir cada elemento da matriz pelo determinante da matriz.
  82. 82. Anexo IV: Generalização do Sistema de Equeções • Iteração 0: (inicializando os pesos)a = [1,1,1...1] 0 t e h = [1,1,1...1] 0 tIteração 1:a =A .h h 1 t 0 1 =A.a 1Iteração 2:a =A .h h 2 t 1 2 =A.a 2Iteração 3:a =A .h h 3 t 2 3 =A.a 3
  83. 83. Anexo IV: Generalização do Sistema de Equeções Iteração k-1:a =A .h k-1 t h =A.a k-2 k-1 k-1Iteração k:a =A .h k t h =A.a k-1 k k
  84. 84. Anexo IV: Generalização do Sistema de Equeções Iteração k-1:a =A .h k-1 t h =A.a k-2 k-1 k-1Iteração k:a =A .h k t h =A.a k-1 k kEntão:a = A . h -> k t a = (A . A) a k-1 k t k-1h =A.a k -> k h = (A . A ) hk t k-1

×